Efficient Algorithms for Array Redistribution

نویسندگان

  • Rajeev Thakur
  • Alok N. Choudhary
  • J. Ramanujam
چکیده

Dynamic redistribution of arrays is required very often in programs on distributed memory parallel computers. This paper presents eecient algorithms for redistribution between diierent cyclic(k) distributions, as deened in High Performance Fortran. We rst propose special optimized algorithms for a cyclic(x) to cyclic(y) redistribution when x is a multiple of y, or y is a multiple of x. We then propose two algorithms, called the GCD method and the LCM method, for the general cyclic(x) to cyclic(y) redistribution when there is no particular relation between x and y. We have implemented these algorithms on the Intel Touchstone Delta, and nd that they perform well for diierent array sizes and number of processors.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Message Encoding Techniques for Efficient Arrary Redistribution

In this paper, we present message encoding techniques to improve the performance of BLOCK-CYCLlC(kr) to BLOCK-CYCLIC(r) {and vice versa) array ’ redistribution algorithms. The message encoding techniques are machine independent and could be used with different algorithms. By incorporating the techniques in array redistribution algorithms, one can reduce the computation overheads and improve the...

متن کامل

Multi-Phase Redistribution: A Communication-Efficient Approach to Array Redistributionz

Distributed-memory implementations of several scientific applications require array redistribution. Array redistribution is used in languages such as High Performance Fortran to dynamically change the distribution of arrays across processors. Performing array redistribution incurs two overheads an indexing overhead for determining the set of processors to communicate with and the array elements...

متن کامل

Efficient Methods for kr R r and r R kr Array

Array redistribution is usually required to enhance algorithm performance in many parallel programs on distributed memory multicomputers. Since it is performed at run-time, there is a performance tradeoff between the efficiency of new data decomposition for a subsequent phase of an algorithm and the cost of redistributing data among processors. In this paper, we present efficient algorithms for...

متن کامل

Packing/Unpacking Information Generation for Efficient Generalized kr→r and r→kr Array Redistribution

Array redistribution is usually required to enhance algorithm performance in many parallel programs on distributed memory multicomputers. Since it is performed at run-time, there is a performance tradeoff between the efficiency of new data decomposition for a subsequent phase of an algorithm and the cost of redistributing data among processors. In this paper, we present efficient methods to gen...

متن کامل

Improving communication scheduling for array redistribution

Many scientific applications require array redistribution when the programs run on distributed memory parallel computers. It is essential to use efficient algorithms for redistribution, otherwise the performance of the programs will degrade considerably. The redistribution overheads consist of two parts: index computation and inter-processor communication. If there is no communication schedulin...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • IEEE Trans. Parallel Distrib. Syst.

دوره 7  شماره 

صفحات  -

تاریخ انتشار 1996